<script setup lang="ts">
import { onMounted, ref } from "vue";

defineProps<{ msg: string }>();
interface Iuser {
  name: string;
  age: number;
}
interface ItableData {
  date: string;
  title: string;
  child?: unknown;
  id: number;
  check?: boolean;
  user?: Iuser;
}
const tableData = ref<ItableData[]>([]);
const count = ref(0);
onMounted(async () => {
  tableData.value = [
    {
      id: 1,
      title: "CES",
      date: "2020",
      user: {
        age: 12,
        name: "ts",
      },
    },
  ];
});
</script>

<template>
  <h1>{{ msg }}</h1>

  <div class="card">
    <button type="button" @click="count++">count is {{ count }}</button>
    <p>Edit</p>
    <p v-for="(item, index) in tableData" :key="index">{{ item }}</p>
    <code>components/HelloWorld.vue</code> to test HMR
  </div>

  <p>
    Check out
    <a href="https://vuejs.org/guide/quick-start.html#local" target="_blank"
      >create-vue</a
    >, the official Vue + Vite starter
  </p>
  <p>
    Install
    <a href="https://github.com/vuejs/language-tools" target="_blank">Volar</a>
    in your IDE for a better DX
  </p>
  <p class="read-the-docs">Click on the Vite and Vue logos to learn more</p>
</template>

<style scoped>
.read-the-docs {
  color: #888;
}
</style>
